Update Master Product
Method: PUT
/products/{id}
As a Customer of iFoodDS, you use the iFoodDS Master Product API to update FSMA 204 master product data in the iFoodDS Trace Exchange platform. Records will be stored for a minimum of two years.
info
This endpoint is being refined and thus subject to change. These docs will update when changes are made.
Request
Type: application/json
The {id}
of the path is the ID retrieved from:
- Completion of a succesful POST. Example:
"request_ids": ["9ed5911f-f6a4-4ba2-9eb4-d6428237be28"]
- Within the payload results of a GET. Example:
"id": "7b5c43c3-3526-4135-a602-0e3979c21d88"
The body of the request comprises one main section: the productMasterDataList
.
{
"productMasterDataList": {
"itemCode": "<item code>",
"businessUnit": "<business unit>",
"itemDescription": "<item description>",
"isFtlItem": true,
"ftlCategory": "<FTL (Food Traceability List) category>",
"brandName": "<brand name>",
"packStyle": "<pack style>",
"packSize": "<pack size>",
"productCommodity": "<product commodity>",
"productVariety": "<product variety>",
"scientificName": "<scientific name>",
"acceptableSpeciesName": "<acceptable species name>",
"gtin": "<GTIN (Global Trade Item Number)>",
"itemUpc": "<item UPC (Universal Product Code)>",
"innerPackUpc": "<inner pack UPC>",
"plu": "<PLU (Price Look-up)>",
"alternateItemCode": "<alternate item code>",
"isCoveredByGdst": true
}
}
Data Constraints
Please note the following data constraints:
strings
allow a maximum of 100 characters
Product Data
Required
itemCode
(string): The vendor or purchaser item code that will be referenced in the product.itemDescription
(string): Product Description from the product owner or original purchase order.
Optional
businessUnit
(string): Indicates the business unit associated with the product.alternateItemCode
(string): This field provides sender and shipper to use and alternate identifier for products. This could be a URL, a UUID, or other globally unique identification scheme. The important thing is that it is unique per product and shared between shipper and receiver. For example, this could be a GS1 Digital Link URL for the productgtin
(string): Case-level Global Trade Identification Number (GTIN-14). https://www.gs1.org/docs/idkeys/GS1_GTIN_Executive_Summary.pdfitemUpc
(string): Item-level Universal Product Code, may be GTIN-8, GTIN-12, or GTIN-13. GS1 GTIN Executive SummaryinnerPackUpc
(string): Point of sale barcode, may be GTIN-8, GTIN-12, GTIN-13, or GTIN-14. GS1 GTIN Executive Summaryplu
(string): Item-level Price Look-up Code. PLU Codes Search — IFPSisFtlItem
(boolean): Indicates whether product is on the Food Traceability List (FTL)ftlCategory
(string)*: Indicates the product's FTL category, i.e. “soft cheese”, “shell eggs”, “nut butter”, “cucumbers”, “herbs”, “leafy greens”, “melons”, “peppers”, “sprouts”, “tomatoes”, “tropical tree fruits”, “fresh-cut fruits”, “fresh-cut vegetables”, “finfish”, “smoked finfish”, “crustaceans”, “molluscan shellfish”, “ready-to-eat deli salads”, or “multiple-ftl-ingredients” *Required if on the FTLbrandName
(string): The brand of the product that appears on the consumer packagepackStyle
(string): Product's pack style, e.g. "Case", "Carton", "Tray", "Clamshell", etc.packSize
(string): Product's pack size as Packaging Configuration OR Count OR Weight + Unit of Measure, e.g. "20 x 12 oz bags"productCommodity
(string): For fresh produce, a description of the commodity, e.g. "Peppers"productVariety
(string): For fresh produce a description of the variety when applicable, e.g. "Jalapeno"scientificName
(string): For seafood the scientific name of the species, see: FDA Seafood ListacceptableSpeciesName
(string): For seafood a description of the common species name, see: FDA Seafood ListisCoveredByGdst
(boolean): Flag to indicate that product is part of GDST
Sample Payload
{
"productMasterDataList": {
"itemCode": "2790",
"businessUnit": "01",
"itemDescription": "Organic Apples",
"isFtlItem": true,
"ftlCategory": "Fruits",
"brandName": "French Farms",
"packStyle": "Bag",
"packSize": "5 lbs",
"productCommodity": "Apple",
"productVariety": "Fuji",
"scientificName": "Malus domestica",
"acceptableSpeciesName": "Apple",
"gtin": "01234567891234",
"itemUpc": "012345678912",
"innerPackUpc": "012345678913",
"plu": "4131",
"alternateItemCode": "2790-ALT",
"isCoveredByGdst": true
}
}
Response
- 200
- 400
Product data ingested successfully
{
"request_ids": [
"1abc2f7e-6ca2-40ec-9566-19a850945d7f"
]
}
Description of what user-fixable validation error occurred and in what part of the payload
{
"detail": "'itemCode' is a required property - 'productMasterDataList.0'",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}